// todo 时钟案例


// 需求：把files文件夹下的index.html 文件 拆分3个文件 放置到clock目录中
//   index.html
//   index.css  style里面的样式
//   index.js   script里面的js代码

// 步骤
//  1. 要读取index页面内容 ==> ？
//  2. 内容提取style标签里面的内容，将提取到的内容写入到index.css文件中  ==> ？
//  3. 内容提取script标签里面的内容，将提取到的内容写入到index.js文件中
//  4. 把内容中的style标签替换掉 link   script标签内容替换掉 script ，将替换后的内容写入到index.html文件中 ==> ？替换方法
const path = require('path')
const fs = require('fs')

const regStyle = /<style>[\s\S]*<\/style>/
const regScript = /<script>[\s\S]*<\/script>/

const indexPath = path.join(__dirname, '/files/index.html')
const cssPath = path.join(__dirname, '/clock/index.css')
const jsPath = path.join(__dirname, '/clock/index.js')
const htmlPath = path.join(__dirname, '/clock/index.html')

fs.readFile(indexPath, 'utf8', function (err, data) {
  if (err) {
    return console.log(err.message);
  }
  // console.log(data);
  cssFn(data)
  jsFn(data)
  htmlFn(data)
})

function cssFn(data) {
  const str = regStyle.exec(data)[0]

  const newCss = str.replace('<style>', '').replace('</style>', '')

  fs.writeFile(cssPath, newCss, function (err) {
    if (err) {
      return console.log(err.message);
    }
    console.log('写入成功');
  })
}

function jsFn(data) {
  const str = regScript.exec(data)[0]

  const newJs = str.replace('<script>', '').replace('</script>', '')

  fs.writeFile(jsPath, newJs, function (err) {
    if (err) {
      return console.log(err.message);
    }
    console.log('写入成功');
  })
}

function htmlFn(data) {
  const res = data.replace(regStyle, '<link rel="stylesheet" href="../clock/index.css">').replace(regScript, '<script src="../clock/index.js"></script>')
  fs.writeFile(htmlPath, res, function (err) {
    if (err) {
      return console.log(err.message);
    }
    console.log('写入成功');
  })
} 